﻿using System;

namespace YArchitech.HCLoad.XmlData
{
	public class Building
	{
		public Building(BuildingCollect buildingCollect)
		{
			this.parent = buildingCollect;
			this.AddDefaultWallCollect();
			this.AddKeyFloorTables();
			this.AddOrientationFixs();
			this.AddFloorCollect();
		}

		public BuildingCollect Parent
		{
			get
			{
				return this.parent;
			}
			set
			{
				this.parent = value;
			}
		}

		public int ID
		{
			get
			{
				return this.nID;
			}
			set
			{
				this.nID = value;
			}
		}

		public int StartFloorNum
		{
			get
			{
				return this.nStartFloorNum;
			}
			set
			{
				this.nStartFloorNum = value;
			}
		}

		public int EndFloorNum
		{
			get
			{
				return this.nEndFloorNum;
			}
			set
			{
				this.nEndFloorNum = value;
			}
		}

		public string Name
		{
			get
			{
				return this.sName;
			}
			set
			{
				this.sName = value;
			}
		}

		public string Description
		{
			get
			{
				return this.sDescription;
			}
			set
			{
				this.sDescription = value;
			}
		}

		public string GuidString
		{
			get
			{
				return this.sGuidString;
			}
			set
			{
				this.sGuidString = value;
			}
		}

		public double[] ZsLfhXr
		{
			get
			{
				return this.adZsLfhXr;
			}
			set
			{
				this.adZsLfhXr = value;
			}
		}

		public double[] ZsLfhQr
		{
			get
			{
				return this.adZsLfhQr;
			}
			set
			{
				this.adZsLfhQr = value;
			}
		}

		public double[] ZsSfh
		{
			get
			{
				return this.adZsSfh;
			}
			set
			{
				this.adZsSfh = value;
			}
		}

		public double DjRfhXr
		{
			get
			{
				return this.dDjRfhXr;
			}
			set
			{
				this.dDjRfhXr = value;
			}
		}

		public double DjRfhQr
		{
			get
			{
				return this.dDjRfhQr;
			}
			set
			{
				this.dDjRfhQr = value;
			}
		}

		public double DjSfh
		{
			get
			{
				return this.dDjSfh;
			}
			set
			{
				this.dDjSfh = value;
			}
		}

		public double BuildingStartElevation
		{
			get
			{
				return this.dBuildingStartElevation;
			}
			set
			{
				this.dBuildingStartElevation = value;
			}
		}

		public double BuildingVolume
		{
			get
			{
				return this.dBuildingVolume;
			}
			set
			{
				this.dBuildingVolume = value;
			}
		}

		public double SjWd
		{
			get
			{
				return this.dSjWd;
			}
			set
			{
				this.dSjWd = value;
			}
		}

		public double FyXsCf
		{
			get
			{
				return this.dFyXsCf;
			}
			set
			{
				this.dFyXsCf = value;
			}
		}

		public double RyXsCr
		{
			get
			{
				return this.dRyXsCr;
			}
			set
			{
				this.dRyXsCr = value;
			}
		}

		public double WhJgWbmXsXs
		{
			get
			{
				return this.dWhJgWbmXsXs;
			}
			set
			{
				this.dWhJgWbmXsXs = value;
			}
		}

		public double WqWbmXsXS
		{
			get
			{
				return this.dWqWbmXsXS;
			}
			set
			{
				this.dWqWbmXsXS = value;
			}
		}

		public double XjWhJgWbmHrXs
		{
			get
			{
				return this.dXjWhJgWbmHrXs;
			}
			set
			{
				this.dXjWhJgWbmHrXs = value;
			}
		}

		public double DjWhJgWbmHrXs
		{
			get
			{
				return this.dDjWhJgWbmHrXs;
			}
			set
			{
				this.dDjWhJgWbmHrXs = value;
			}
		}

		public double WhJgNbmHrXs
		{
			get
			{
				return this.dWhJgNbmHrXs;
			}
			set
			{
				this.dWhJgNbmHrXs = value;
			}
		}

		public double DjWhJgFlFjXs
		{
			get
			{
				return this.dDjWhJgFlFjXs;
			}
			set
			{
				this.dDjWhJgFlFjXs = value;
			}
		}

		public DefaultWallCollect DefaultWallCollect
		{
			get
			{
				return this.defaultWallCollect;
			}
		}

		private void AddDefaultWallCollect()
		{
			try
			{
				this.defaultWallCollect = new DefaultWallCollect(this);
			}
			catch (Exception ex)
			{
				throw new Exception(ex.ToString());
			}
		}

		public KeyFloorTables KeyFloorTables
		{
			get
			{
				return this.keyFloorTables;
			}
		}

		private void AddKeyFloorTables()
		{
			try
			{
				this.keyFloorTables = new KeyFloorTables(this);
			}
			catch (Exception ex)
			{
				throw new Exception(ex.ToString());
			}
		}

		public OrientationFixs OrientationFixs
		{
			get
			{
				return this.orientationFixs;
			}
		}

		private void AddOrientationFixs()
		{
			try
			{
				this.orientationFixs = new OrientationFixs(this);
			}
			catch (Exception ex)
			{
				throw new Exception(ex.ToString());
			}
		}

		public FloorCollect FloorCollect
		{
			get
			{
				return this.floorCollect;
			}
		}

		private void AddFloorCollect()
		{
			try
			{
				this.floorCollect = new FloorCollect(this);
			}
			catch (Exception ex)
			{
				throw new Exception(ex.ToString());
			}
		}

		private BuildingCollect parent;

		private int nID;

		private int nStartFloorNum;

		private int nEndFloorNum;

		private string sName;

		private string sDescription;

		private string sGuidString;

		private double[] adZsLfhXr;

		private double[] adZsLfhQr;

		private double[] adZsSfh;

		private double dDjRfhXr;

		private double dDjRfhQr;

		private double dDjSfh;

		private double dBuildingStartElevation;

		private double dBuildingVolume;

		private double dSjWd;

		private double dFyXsCf;

		private double dRyXsCr;

		private double dWhJgWbmXsXs;

		private double dWqWbmXsXS;

		private double dXjWhJgWbmHrXs;

		private double dDjWhJgWbmHrXs;

		private double dWhJgNbmHrXs;

		private double dDjWhJgFlFjXs;

		private DefaultWallCollect defaultWallCollect;

		private KeyFloorTables keyFloorTables;

		private OrientationFixs orientationFixs;

		private FloorCollect floorCollect;
	}
}
